package com.miao.hong.fang.course.dao;

import java.sql.Timestamp;
import java.util.List;

import com.miao.hong.fang.course.CourseTO;
import com.miao.hong.fang.util.pagination.ListAndCount;

public interface CourseDAO {

	List getHotCourse();
	
	ListAndCount getPublicCourse(Timestamp courseStartDt, String location, String category);
	
	List getRecommendedCourse();
	
	List getCityCourse(String cityName);
	
	void addCourse(CourseTO courseTO);
	
	ListAndCount searchCourse(String courseTitle, Object coursePeriod,
			Timestamp courseStartTime, Timestamp courseEndTime,
			Object coursePrice, String courseCity, String courseCategory,
			String courseTeacher, String isHotCourse, String isRecommendCourse,
			String isPublicCourse);
	
	CourseTO getCourseDetail(String courseId);
	
	public List getAllCourseCities();
	
	void updateCourse(CourseTO courseTO);
	
	void deleteCourse(String courseId, String version);
	
	List getAllCourseCategory();
	
	void addCourseCategory(String courseCategory);
	
	int updateCourseCategory(String oldValue, String newValue);
	
	int deleteCourseCategory(String categoryName);
	
	List getCourseByCategory(String courseCategory);
	
	List getAllCourse();
	
}
